﻿#ifndef YUTOPP_TWITTER_REST_POLICY_HPP
#define YUTOPP_TWITTER_REST_POLICY_HPP

#include "../../../oauth/1/core.hpp"
#include "../../../encoding.hpp"
#include "../../../utility/translator_u8_sjis.hpp"

#include "group.hpp"

namespace webapp
{
	namespace clients
	{
		namespace twitter
		{
			namespace policy
			{
				class rest_api
				{
				public:
					typedef std::string							string_type;
					typedef util::translator_u8_sjis			translator_type;
					typedef group_rest							group_type;
					typedef oauth::v1::core<>					auth_type;
				
					static const char* get_domain()
					{
						return "api.twitter.com";
					}

					static const char* get_path()
					{
						return "/1/";
					}

					static const char* get_user_agent()
					{
						return "OAuthLibCpp";
					}
				};

				class wrest_api
				{
				public:
					typedef std::wstring						string_type;
					typedef encoding::translator<
						encoding::u8_t, encoding::u16_t>		translator_type;
					typedef group_rest							group_type;
					typedef oauth::v1::core<>					auth_type;
				
					static const char* get_domain()
					{
						return "api.twitter.com";
					}

					static const char* get_path()
					{
						return "/1/";
					}

					static const char* get_user_agent()
					{
						return "OAuthLibCpp";
					}
				};
			} // - policy
		} // - twitter
	} // - clients
} // - webapp



#endif /*YUTOPP_TWITTER_REST_POLICY_HPP*/
